home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
prog
/
atari
/
m2
/
cat3src
/
magic
/
d
/
magictyp.d
< prev
next >
Wrap
Text File
|
1997-10-26
|
17KB
|
331 lines
(*----------------------------------------------------------------------*
* *
* MAGIC Modula's All purpose GEM Interface Cadre *
* ÿ ÿ ÿ ÿ ÿ *
*----------------------------------------------------------------------*
* Version 3.30 02.02.1992 (C)90/91/92 by Peter Hellinger Software *
*----------------------------------------------------------------------*
* Dieses Modul ist urheberrechtlich geschtzt. *
* *
* Die Verffentlichung des Quelltextes oder Teilen daraus in schrift- *
* licher Form, insbesondere in Zeitschriften, sowie die Verbreitung *
* ber Public-Domain-Hndler bedarf der ausdrcklichen schriftlichen *
* Genehmigung des Autors! *
* *
* Der Autor gibt hiermit die ausdrckliche Erlaubnis, das Modul jeder- *
* zeit auch im Quelltext weiterzugegeben, sofern dessen Text und ins- *
* besondere dieser Urheberrechts-Vermerk nicht verndert wird, und *
* durch die Weitergabe kein finanzieller Nutzen entsteht. Der Autor *
* behlt sich das Recht vor, diese Erlaubnis jederzeit u. ohne Angaben *
* von Grnden zu widerrufen. *
*----------------------------------------------------------------------*)
(*----------------------------------------------------------------------*
* MagicTypes Typdeklarationen nach Profibuch *
*----------------------------------------------------------------------*)
DEFINITION MODULE MagicTypes;
FROM MagicSys IMPORT Nil, Null, Bit0, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6,
Bit7, Bit8, Bit9, Bit10, Bit11, Bit12, Bit13, Bit14,
Bit15, LOC, Byte, ByteSet, sWORD, sINTEGER, sCARDINAL,
sBITSET, lINTEGER, lCARDINAL, lWORD, lBITSET;
IMPORT SYSTEM;
TYPE PtrPD = POINTER TO PD;
PD = RECORD
pLowtpa: SYSTEM.ADDRESS;
pHitpa: SYSTEM.ADDRESS;
pTbase: SYSTEM.ADDRESS;
pTlen: lCARDINAL;
pDbase: SYSTEM.ADDRESS;
pDlen: lCARDINAL;
pBbase: SYSTEM.ADDRESS;
pBlen: lCARDINAL;
pDta: SYSTEM.ADDRESS;
pParent: PtrPD;
res1: SYSTEM.ADDRESS;
pEnv: SYSTEM.ADDRESS;
devx: ARRAY [0..5] OF Byte;
res2: Byte;
defdrv: Byte;
pUndef: ARRAY [0..17] OF lCARDINAL;
pCmdlin: ARRAY [0..126] OF CHAR;
END;
TYPE BITBLK = RECORD
bWd: sINTEGER;
bHt: sINTEGER;
planeCt: sINTEGER;
fgCol: sINTEGER;
bgCol: sINTEGER;
opTab: ARRAY [0..3] OF Byte;
sXmin: sINTEGER;
sYmin: sINTEGER;
sForm: SYSTEM.ADDRESS;
sNxwd: sINTEGER;
sNxln: sINTEGER;
sNxpl: sINTEGER;
dXmin: sINTEGER;
dYmin: sINTEGER;
dForm: SYSTEM.ADDRESS;
dNxwd: sINTEGER;
dNxln: sINTEGER;
dNxpl: sINTEGER;
pAddr: SYSTEM.ADDRESS;
pNxln: sINTEGER;
pNxpl: sINTEGER;
pMask: sINTEGER;
filler: ARRAY [0..23] OF Byte;
END;
TYPE PtrFONTHDR = POINTER TO FONTHDR;
FONTHDR = RECORD
fontId: sINTEGER;
point: sINTEGER;
name: ARRAY [0..31] OF CHAR;
firstAde: sCARDINAL;
lastAde: sCARDINAL;
top: sCARDINAL;
ascent: sCARDINAL;
half: sCARDINAL;
descent: sCARDINAL;
bottom: sCARDINAL;
maxCharwidth: sCARDINAL;
maxCellwidth: sCARDINAL;
leftOffset: sCARDINAL;
rightOffset: sCARDINAL;
thicken: sCARDINAL;
ulSize: sCARDINAL;
lighten: sCARDINAL;
skew: sCARDINAL;
flags: sBITSET;
horTable: POINTER TO ARRAY [0..255] OF sCARDINAL;
offTable: POINTER TO ARRAY [0..255] OF sCARDINAL;
datTable: SYSTEM.ADDRESS;
formWidth: sCARDINAL;
formHeight: sCARDINAL;
nextFont: PtrFONTHDR;
END;
TYPE IMGHEADER = RECORD
imVersion: sINTEGER;
imHeadlength: sINTEGER;
imNplanes: sINTEGER;
imPatlen: sINTEGER;
imPixwidth: sINTEGER;
imPixheight: sINTEGER;
imScanwidth: sINTEGER;
imNlines: sINTEGER;
END;
TYPE PtrLINEA = POINTER TO LINEA;
LINEA = RECORD
PLANES: sINTEGER;
WIDTH: sINTEGER;
CONTRL: POINTER TO ARRAY [0.. 11] OF sINTEGER;
INTIN: POINTER TO ARRAY [0..255] OF sINTEGER;
PTSIN: POINTER TO ARRAY [0..255] OF sINTEGER;
INTOUT: POINTER TO ARRAY [0..255] OF sINTEGER;
PTSOUT: POINTER TO ARRAY [0..255] OF sINTEGER;
COLBIT0: sINTEGER;
COLBIT1: sINTEGER;
COLBIT2: sINTEGER;
COLBIT3: sINTEGER;
LSTLIN: sINTEGER;
LNMASK: sBITSET;
WMODE: sINTEGER;
X1: sINTEGER;
Y1: sINTEGER;
X2: sINTEGER;
Y2: sINTEGER;
PATPTR: SYSTEM.ADDRESS;
PATMSK: sBITSET;
MFILL: sINTEGER;
CLIP: sINTEGER;
XMINCL: sINTEGER;
YMINCL: sINTEGER;
XMAXCL: sINTEGER;
YMAXCL: sINTEGER;
XDDA: sINTEGER;
DDAINC: sINTEGER;
SCALDIR: sINTEGER;
MONO: sINTEGER;
SOURCEX: sINTEGER;
SOURCEY: sINTEGER;
DESTX: sINTEGER;
DESTY: sINTEGER;
DELX: sINTEGER;
DELY: sINTEGER;
FBASE: PtrFONTHDR;
FWIDTH: sINTEGER;
STYLE: sBITSET;
LITEMASK: sBITSET;
SKEWMASK: sBITSET;
WEIGHT: sINTEGER;
ROFF: sINTEGER;
LOFF: sINTEGER;
SCALE: sINTEGER;
CHUP: sINTEGER;
TEXTFG: sINTEGER;
SCRTCHP: SYSTEM.ADDRESS;
SCRTP2: sINTEGER;
TEXTBG: sINTEGER;
COPYTRAN: sINTEGER;
SEEDABORT: SYSTEM.ADDRESS;
END;
TYPE PtrLINEAFonts = POINTER TO ARRAY [0..2] OF PtrFONTHDR;
TYPE METAHDR = RECORD
mfHeader: sINTEGER;
mfHlenght: sINTEGER;
mfVersion: sINTEGER;
mfNdcrcfl: sINTEGER;
mfExtents: ARRAY [0..3] OF sINTEGER;
mfPagesz: ARRAY [0..1] OF sINTEGER;
mfCoords: ARRAY [0..3] OF sINTEGER;
mfImgflag: sINTEGER;
mfResvd: ARRAY [0..8] OF sINTEGER;
END;
TYPE MFORM = RECORD
mfXhot: sINTEGER;
mfYhot: sINTEGER;
mfNplanes: sINTEGER;
mfFg: sINTEGER;
mfBg: sINTEGER;
mfMask: ARRAY [0..15] OF sCARDINAL;
mfData: ARRAY [0..15] OF sCARDINAL;
END;
TYPE RSHDR = RECORD
rshVrsn: sCARDINAL;
rshObject: sCARDINAL;
rshTedinfo: sCARDINAL;
rshIconblk: sCARDINAL;
rshBitblk: sCARDINAL;
rshFrstr: sCARDINAL;
rshString: sCARDINAL;
rshImdata: sCARDINAL;
rshFrimg: sCARDINAL;
rshTrindex: sCARDINAL;
rshNobs: sCARDINAL;
rshNtree: sCARDINAL;
rshNted: sCARDINAL;
rshNib: sCARDINAL;
rshNbb: sCARDINAL;
rshNstring: sCARDINAL;
rshNimages: sCARDINAL;
rshRssize: sCARDINAL;
END;
TYPE SDB = RECORD
xhot: sINTEGER;
yhot: sINTEGER;
form: sINTEGER;
bgcol: sINTEGER;
fgcol: sINTEGER;
image: ARRAY [0..31] OF sINTEGER;
END;
TYPE PtrSYSHDR = POINTER TO SYSHDR;
SYSHDR = RECORD
osEntry: sCARDINAL;
osVersion: sCARDINAL;
osStart: SYSTEM.ADDRESS;
osBase: SYSTEM.ADDRESS;
osMembot: SYSTEM.ADDRESS;
osShell: SYSTEM.ADDRESS;
osMagic: SYSTEM.ADDRESS;
osGendat: lCARDINAL;
osPalmode: sCARDINAL;
osGendatg: sCARDINAL;
osCountry: lCARDINAL;
root: SYSTEM.ADDRESS;
kbshift: SYSTEM.ADDRESS;
run: SYSTEM.ADDRESS;
END;
TYPE PtrVDIESC = POINTER TO VDIESC;
VDIESC = RECORD
RESERVED6: lCARDINAL;
CURFONT: POINTER TO FONTHDR;
RESERVED5: ARRAY [0..23] OF sINTEGER;
MPOSHX: sINTEGER;
MPOSHY: sINTEGER;
MPLANES: sINTEGER;
MCDBBG: sINTEGER;
MCDBFG: sINTEGER;
MASKFORM: ARRAY [0..31] OF sINTEGER;
INQTAB: ARRAY [0..44] OF sINTEGER;
DEVTAB: ARRAY [0..44] OF sINTEGER;
GCURX: sINTEGER;
GCURY: sINTEGER;
MHIDCT: sINTEGER;
MOUSEBT: sINTEGER;
REQCOL: ARRAY [0..47] OF sINTEGER;
SIZTAB: ARRAY [0..14] OF sINTEGER;
RESERVED4: ARRAY [0..1] OF sINTEGER;
CURWORK: SYSTEM.ADDRESS;
DEFFONT: POINTER TO FONTHDR;
FONTRING: ARRAY [0..3] OF SYSTEM.ADDRESS;
FONTCOUNT: sINTEGER;
RESERVED3: ARRAY [0..44] OF sINTEGER;
CURMSSTAT: Byte;
RESERVED2: Byte;
VHIDCNT: sINTEGER;
CURX: sINTEGER;
CURY: sINTEGER;
CURFLAG: Byte;
MOUSEFLAG: Byte;
RESERVED1: lCARDINAL;
VSAVXY: ARRAY [0..1] OF sINTEGER;
SAVELEN: sINTEGER;
SAVEADDR: SYSTEM.ADDRESS;
SAVESTAT: sBITSET;
SAVEAREA: ARRAY [0..63] OF lCARDINAL;
USERTIM: SYSTEM.ADDRESS;
NEXTTIM: SYSTEM.ADDRESS;
USERBUT: SYSTEM.ADDRESS;
USERCUR: SYSTEM.ADDRESS;
USERMOT: SYSTEM.ADDRESS;
VCELHT: sINTEGER;
VCELMX: sINTEGER;
VCELMY: sINTEGER;
VCELWR: sINTEGER;
VCOLBG: sINTEGER;
VCOLFG: sINTEGER;
VCURAD: SYSTEM.ADDRESS;
VCUROF: sINTEGER;
VCURXY: ARRAY [0..1] OF sINTEGER;
VPERIOD: Byte;
VCURCT: Byte;
VFNTAD: SYSTEM.ADDRESS;
VFNTND: sINTEGER;
VFNTST: sINTEGER;
VFNTWD: sINTEGER;
VREZHZ: sINTEGER;
VOFFAD: SYSTEM.ADDRESS;
RESERVED: sINTEGER;
VREZVT: sINTEGER;
BYTESLIN: sINTEGER;
END;
PROCEDURE LineA (): PtrLINEA;
(* Liefert einen Zeiger auf die LineA-Variablen *)
PROCEDURE LineAFonts (): PtrLINEAFonts;
(* Liefert einen Zeiger auf die LineA-Fonts *)
PROCEDURE Vdiesc (): PtrVDIESC;
(* Liefert einen Zeiger auf die negativen LineA-Variablen *)
END MagicTypes.